﻿using System.ComponentModel;
using Utility.Enum;

namespace Model.BusinessModel.OutPut
{
    /// <summary>
    /// 抄送流程输出模型
    /// </summary>
    [EnitityMapping(MenuId = "8A7E205E-F4E2-48EC-B264-D1477CBCFC27")]
    public class CarbonCopyFlowOutPut
    {
        /// <summary>
        /// 流程申请主键
        /// </summary>
        [Description("主键")]
        public string FlowApplyId { get; set; } = string.Empty;

        /// <summary>
        /// 流程申请标题
        /// </summary>
        [Description("申请标题")]
        public string ApplyTitle { get; set; } = string.Empty;

        /// <summary>
        /// 是否发布
        /// </summary>
        [Description("是否发布")]
        public bool IsPublish { get; set; }

        /// <summary>
        /// 流程申请状态
        /// </summary>
        [Description("流程状态")]
        public int FlowApplyState { get; set; }

        /// <summary>
        /// 流程申请状态名称
        /// </summary>
        [Description("流程状态")]
        public string FlowApplyStateName { get; set; } = string.Empty;

        /// <summary>
        /// 流程名称
        /// </summary>
        [Description("流程名称")]
        public string FlowName { get; set; } = string.Empty;

        /// <summary>
        /// 表单名称
        /// </summary>
        [Description("表单名称")]
        public string FormName { get; set; } = string.Empty;

        /// <summary>
        /// 加急指数
        /// </summary>
        [Description("加急指数")]
        public int UrgentIndex { get; set; }

        /// <summary>
        /// 当前节点ID
        /// </summary>
        public string CurrentNodeId { get; set; } = string.Empty;

        /// <summary>
        /// 当前审批节点名称
        /// </summary>
        [Description("审批节点")]
        public string CurrentNodeName { get; set; } = string.Empty;

        /// <summary>
        /// 当前节点审核人姓名
        /// </summary>
        [Description("审核人")]
        public string CurrentNodeReviewerName { get; set; } = string.Empty;

        /// <summary>
        /// 当前节点审核状态id
        /// </summary>
        public int CurrentNodeState { get; set; }

        /// <summary>
        /// 下一个审批节点名称
        /// </summary>
        [Description("下个审批节点")]
        public string NextNodeName { get; set; } = string.Empty;

        /// <summary>
        /// 下一个节点审核人姓名
        /// </summary>
        [Description("下个审核人")]
        public string NextNodeReviewerName { get; set; } = string.Empty;

        /// <summary>
        /// 备注
        /// </summary>
        [Description("备注")]
        public string Remark { get; set; } = string.Empty;

        /// <summary>
        /// 数据状态
        /// </summary>
        [Description("数据状态")]
        public int DataState { get; set; }

        /// <summary>
        /// 消息接收者key
        /// </summary>
        [Description("消息接收者key")]
        public string MessageRecipient { get; set; } = string.Empty ;

        /// <summary>
        /// 消息接收者
        /// </summary>
        [Description("消息接收者")]
        public string MessageRecipientName { get; set; } = string.Empty;

        /// <summary>
        /// 消息推送者key
        /// </summary>
        [Description("消息推送者key")]
        public string MessageSender { get; set; } =string.Empty;

        /// <summary>
        /// 消息推送者
        /// </summary>
        [Description("消息推送者")]
        public string MessageSenderName { get; set; } = string.Empty;

        /// <summary>
        /// 申请时间
        /// </summary>
        [Description("申请时间")]
        public DateTime CreateTime { get; set; }

        /// <summary>
        /// 创建人员key
        /// </summary>
        public string CreateUserKey { get; set; } = string.Empty;

        /// <summary>
        /// 申请人员
        /// </summary>
        [Description("申请人员")]
        public string CreateUserName { get; set; } = string.Empty;
    }
}
